package yolorpc.registry;


import yolorpc.serializer.JdkSerializer;
import yolorpc.serializer.Serializer;
import yolorpc.spi.SpiLoader;

/**
 * @author yolo
 * @Program RPC
 * @description 注册中心工厂(用于获取注册中心对象)
 * @create 2025-04-28 16:05
 **/
public class RegistryFactory {

    static {
        SpiLoader.load(Registry.class);
    }

    /**
     * 默认注册中心
     * */
    private final static Registry DEFAULT_REGISTRY = new EtcdRegistry();

    /**
     * 获取对应实例
     *
     * @param key 实现类对应的key值
     * @return Registry 实现类实例
     * */
    public static Registry getInstance(String key){
        return SpiLoader.getInstance(Registry.class, key);
    }

}
